package com.hjl.mybatis.mapper;

import com.hjl.mybatis.entity.Emp;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * @author ServivE
 * @version 0.1
 * @className EmpMapper
 * @description
 * @date 2024/7/31 9:23
 * @since jdk11
 */
public interface EmpMapper {
    /***通过分步查询查询员工信息
     * @parame id
     * *@return
     */
    Emp getEmpByStep(@Param("eid") int eid);


    int delEmps(int[] arrays);

    List<Emp> getEmpBySalOrDept(Emp emp);

    /**
     * MyBatis获取参数值的方式
     */
//    1、单个字面量类型的参数
    Emp getEmpById(Integer eid);

    //    2、多个字面量类型的参数
    Emp getEmpByIdAndEname(Integer eid, String ename);

    //    3、map集合类型的参数
    Emp getEmpByMap(Map<String, Object> map);
//    4、实体类类型的参数
//    5、使用@Param标识参数

    //查询员工姓名性别工资 显示在页面里
    List<Emp> getEmpInfo();

    //分页
    List<Emp> getEmpByPage(Map<String, Object> map);

    //新增
    int insertEmp(Emp emp);

    //删除
    int deleteEmp(int eid);

    //改
    int updateEmp(Emp emp);
    //获取总条数
    int getEmpCount();
}
